<html>
<head><meta charset="utf-8"><title>Follow-up to the bad perf triage of 2020-07-21 · t-compiler/performance · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/index.html">t-compiler/performance</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html">Follow-up to the bad perf triage of 2020-07-21</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="204517173"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204517173" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204517173">(Jul 21 2020 at 07:01)</a>:</h4>
<p>The triage is <a href="https://github.com/rust-lang/rustc-perf/blob/master/triage/2020-07-21.md">here</a>. Very bad, lots of bad regressions, lots of difficulty assigning responsibility because many regressions landed in rollups.</p>



<a name="204517175"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204517175" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204517175">(Jul 21 2020 at 07:01)</a>:</h4>
<p>I have some suggestions on how to improve things.</p>



<a name="204517252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204517252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204517252">(Jul 21 2020 at 07:03)</a>:</h4>
<ul>
<li>We need documentation for how to do rollups. <span class="user-mention" data-user-id="132040">@Manish Goregaokar</span> has volunteered.<ul>
<li>In particular, PRs known to affect perf should always be landed by themselves. This includes reversions of regressing PRs. Even though their perf effect is known in advance, if they land in a rollup their effects could mask effects of other PRs in the rollup.</li>
</ul>
</li>
<li>We need tools for doing perf CI runs of PRs within rollups, after they have landed. <span class="user-mention" data-user-id="116122">@simulacrum</span> has volunteered.</li>
<li>A request for a perf CI run in a PR should auto-mark that PR as "rollup=never". (This should be overridable, for cases where the perf effect was found to be negligible.) <span class="user-mention" data-user-id="116122">@simulacrum</span> is that also something you could do?</li>
</ul>



<a name="204518087"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204518087" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204518087">(Jul 21 2020 at 07:20)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> you asked for a list of PRs within rollups that might have caused regressions, that would be worth benchmarking individually. Here's my best attempt:</p>



<a name="204518092"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204518092" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204518092">(Jul 21 2020 at 07:21)</a>:</h4>
<ul>
<li><a href="https://github.com/rust-lang/rust/issues/74461"><a href="https://github.com/rust-lang/rust/issues/74461"><a href="https://github.com/rust-lang/rust/issues/74461">#74461</a></a></a> (18 PRs)<ul>
<li><a href="https://github.com/rust-lang/rust/issues/74056">#74056</a> (Add Arguments::as_str().)</li>
<li><a href="https://github.com/rust-lang/rust/issues/74169">#74169</a> (Stop processing unreachable blocks when solving dataflow)</li>
<li><a href="https://github.com/rust-lang/rust/issues/74411">#74411</a> (Don't assign () to ! MIR locals)</li>
<li><a href="https://github.com/rust-lang/rust/issues/74424">#74424</a> (Move hir::Place to librustc_middle/hir)</li>
<li><a href="https://github.com/rust-lang/rust/issues/74438">#74438</a> (warn about uninitialized multi-variant enums)</li>
</ul>
</li>
<li><a href="https://github.com/rust-lang/rust/issues/74468"><a href="https://github.com/rust-lang/rust/issues/74468"><a href="https://github.com/rust-lang/rust/issues/74468">#74468</a></a></a> (11 PRs)<ul>
<li><a href="https://github.com/rust-lang/rust/issues/74464">#74464</a> (Use pathdiff crate)</li>
<li><a href="https://github.com/rust-lang/rust/issues/74069">#74069</a> (Compare tagged/niche-filling layout and pick the best one)</li>
<li><a href="https://github.com/rust-lang/rust/issues/72414">#72414</a> (Add lazy initialization primitives to std)</li>
</ul>
</li>
<li><a href="https://github.com/rust-lang/rust/issues/74493"><a href="https://github.com/rust-lang/rust/issues/74493"><a href="https://github.com/rust-lang/rust/issues/74493">#74493</a></a></a> (7 PRs)<ul>
<li><a href="https://github.com/rust-lang/rust/issues/74071">#74071</a> (rustc_metadata: Make crate loading fully speculative)</li>
<li><a href="https://github.com/rust-lang/rust/issues/74201">#74201</a> (impl Index&lt;RangeFrom&gt; for CStr)</li>
</ul>
</li>
</ul>



<a name="204518608"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204518608" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204518608">(Jul 21 2020 at 07:29)</a>:</h4>
<p>oh huh I would've expected <a href="https://github.com/rust-lang/rust/issues/74071">#74071</a> (even just from the title) to be a perf win, surprised it wasn't benchmarked - but that's with the hindsight of the the whole gimli situation</p>



<a name="204518712"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204518712" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204518712">(Jul 21 2020 at 07:31)</a>:</h4>
<p>hmm <a href="https://github.com/rust-lang/rust/issues/74069">#74069</a> probably should've been benchmarked, but only because of second-order effects, not the cost of the analysis</p>



<a name="204518752"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204518752" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204518752">(Jul 21 2020 at 07:32)</a>:</h4>
<p>(since we already benchmarked computing both layouts previously, and it seemed to be under 1%)</p>



<a name="204519057"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204519057" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204519057">(Jul 21 2020 at 07:36)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> isn't <a href="https://github.com/rust-lang/rust/issues/74461">#74461</a> entirely the UTF-8 linker thing?</p>



<a name="204519066"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204519066" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204519066">(Jul 21 2020 at 07:36)</a>:</h4>
<p>which was already fixed</p>



<a name="204519167"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204519167" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204519167">(Jul 21 2020 at 07:38)</a>:</h4>
<p>I guess we can't easily tell if there was anything else?</p>



<a name="204519606"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204519606" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204519606">(Jul 21 2020 at 07:44)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/issues/74468">#74468</a> is <em>also</em> a linker regression. we should really have a libstd size comparison on <a href="http://perf.rust-lang.org">perf.rust-lang.org</a> :(</p>



<a name="204522156"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522156" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522156">(Jul 21 2020 at 08:19)</a>:</h4>
<p><span class="user-mention silent" data-user-id="119009">eddyb</span> <a href="#narrow/stream/247081-t-compiler.2Fperformance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21/near/204519057">said</a>:</p>
<blockquote>
<p><span class="user-mention silent" data-user-id="120989">njn</span> isn't <a href="https://github.com/rust-lang/rust/issues/74461">#74461</a> entirely the UTF-8 linker thing?</p>
</blockquote>
<p>The improvements from the landing weren't as high as the improvements from the pre-landing CI run, so it's possible that a regression landed with it</p>



<a name="204522222"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522222" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522222">(Jul 21 2020 at 08:20)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> absolute or relative?</p>



<a name="204522249"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522249" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522249">(Jul 21 2020 at 08:21)</a>:</h4>
<p>I only looked at the percentages</p>



<a name="204522254"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522254" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522254">(Jul 21 2020 at 08:21)</a>:</h4>
<p>improvements for a perfect fix are always going to show up as less, in relative terms, because it's relative to the wrong thing</p>



<a name="204522269"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522269" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522269">(Jul 21 2020 at 08:21)</a>:</h4>
<p>e.g. a 100% regression will have a 50% perfect fix</p>



<a name="204522279"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522279" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522279">(Jul 21 2020 at 08:21)</a>:</h4>
<p>that's not the comparison</p>



<a name="204522337"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522337" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522337">(Jul 21 2020 at 08:22)</a>:</h4>
<p>then inner vs outer?</p>



<a name="204522350"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522350" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522350">(Jul 21 2020 at 08:22)</a>:</h4>
<p>although that's hard to do cleanly here because the fix also landed in a rollup</p>



<a name="204522423"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522423" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522423">(Jul 21 2020 at 08:23)</a>:</h4>
<p>pre-landing: <a href="https://perf.rust-lang.org/compare.html?start=d3df8512d2c2afc6d2e7d8b5b951dd7f2ad77b02&amp;end=556b0eb41b4273f0dcde2cbc2bc9f53e2c09d688">https://perf.rust-lang.org/compare.html?start=d3df8512d2c2afc6d2e7d8b5b951dd7f2ad77b02&amp;end=556b0eb41b4273f0dcde2cbc2bc9f53e2c09d688</a><br>
landing: <a href="https://perf.rust-lang.org/compare.html?start=1fa54ad9680cc82e7301f8ed4e9b7402dfd6ce0e&amp;end=0701419e96d94e5493c7ebfcecb66511ab0aa778&amp;stat=instructions:u">https://perf.rust-lang.org/compare.html?start=1fa54ad9680cc82e7301f8ed4e9b7402dfd6ce0e&amp;end=0701419e96d94e5493c7ebfcecb66511ab0aa778&amp;stat=instructions:u</a></p>



<a name="204522486"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522486" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522486">(Jul 21 2020 at 08:24)</a>:</h4>
<p>The absolute values are sufficiently different due to other changes landing that it's really hard to compare them direclty. That's why it would be good to check for possible regressions. I hope you are right and there weren't any</p>



<a name="204522514"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522514" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522514">(Jul 21 2020 at 08:24)</a>:</h4>
<p>It's such a mess I'd rather over-measure than under-measure, once we have the tools to do so</p>



<a name="204522524"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522524" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522524">(Jul 21 2020 at 08:24)</a>:</h4>
<blockquote>
<p>rust-lang:revert-74416-linker-locale-utf8</p>
</blockquote>
<p>huh, a <code>rust-lang</code> branch, that's a rare occurrence</p>



<a name="204522556"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522556" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522556">(Jul 21 2020 at 08:25)</a>:</h4>
<p>okay, I see, so that's the rollup the fix landed in</p>



<a name="204522575"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522575" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522575">(Jul 21 2020 at 08:25)</a>:</h4>
<p>but if we have numbers for the fix we can compare with the regressing rollup</p>



<a name="204522772"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522772" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522772">(Jul 21 2020 at 08:28)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> oh wow the UTF-8 revert try build is based on exactly the rollup that included the UTF-8 linker regression. so effectively we have numbers for <a href="https://github.com/rust-lang/rust/issues/74461">#74461</a> without the regression</p>



<a name="204522790"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522790" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522790">(Jul 21 2020 at 08:28)</a>:</h4>
<p>or rather, without the largest perf change in it</p>



<a name="204522821"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522821" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522821">(Jul 21 2020 at 08:29)</a>:</h4>
<p>I was surprised to see identical numbers and it ended up because the commits were identical</p>



<a name="204522849"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522849" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522849">(Jul 21 2020 at 08:29)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> <a href="https://perf.rust-lang.org/compare.html?start=39d5a61f2e4e237123837f5162cc275c2fd7e625&amp;end=556b0eb41b4273f0dcde2cbc2bc9f53e2c09d688">https://perf.rust-lang.org/compare.html?start=39d5a61f2e4e237123837f5162cc275c2fd7e625&amp;end=556b0eb41b4273f0dcde2cbc2bc9f53e2c09d688</a></p>



<a name="204522860"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522860" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522860">(Jul 21 2020 at 08:29)</a>:</h4>
<p>so yeah there's a huge regression hiding in there lol</p>



<a name="204522867"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204522867" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204522867">(Jul 21 2020 at 08:29)</a>:</h4>
<p>but only on one benchmark, weird</p>



<a name="204523080"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204523080" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204523080">(Jul 21 2020 at 08:32)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> did we change anything on <a href="http://perf.rust-lang.org">perf.rust-lang.org</a> in terms of how std is built?</p>



<a name="204523087"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204523087" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204523087">(Jul 21 2020 at 08:32)</a>:</h4>
<p>I remember seeing something but I'm not sure</p>



<a name="204523115"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204523115" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204523115">(Jul 21 2020 at 08:32)</a>:</h4>
<p>the non-determinism might be back, is why I'm asking</p>



<a name="204523453"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204523453" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204523453">(Jul 21 2020 at 08:36)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> <span class="user-mention" data-user-id="116122">@simulacrum</span> to summarize a bit, I think these are my suggestions to prioritize (of the ones listed above, I didn't look for other suspects in the rollups):</p>
<ul>
<li><a href="https://github.com/rust-lang/rust/issues/74461"><a href="https://github.com/rust-lang/rust/issues/74461"><a href="https://github.com/rust-lang/rust/issues/74461">#74461</a></a></a> (18 PRs)<ul>
<li>(none, there's only 1 incremental-only regression if we ignore the UTF-8 linker one, and it's weird) </li>
</ul>
</li>
<li><a href="https://github.com/rust-lang/rust/issues/74468"><a href="https://github.com/rust-lang/rust/issues/74468"><a href="https://github.com/rust-lang/rust/issues/74468">#74468</a></a></a> (11 PRs)<ul>
<li><a href="https://github.com/rust-lang/rust/issues/74069">#74069</a> (Compare tagged/niche-filling layout and pick the best one)</li>
</ul>
</li>
<li><a href="https://github.com/rust-lang/rust/issues/74493"><a href="https://github.com/rust-lang/rust/issues/74493"><a href="https://github.com/rust-lang/rust/issues/74493">#74493</a></a></a> (7 PRs)<ul>
<li><a href="https://github.com/rust-lang/rust/issues/74071">#74071</a> (rustc_metadata: Make crate loading fully speculative)</li>
</ul>
</li>
</ul>



<a name="204523458"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204523458" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204523458">(Jul 21 2020 at 08:36)</a>:</h4>
<p>I guess it's just two, lol</p>



<a name="204523536"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204523536" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204523536">(Jul 21 2020 at 08:37)</a>:</h4>
<p>based on how much these account for their respective rollups, we can figure out what to do with the rest (or in what order). idk what the procedure for getting try builds for these is though</p>



<a name="204523795"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204523795" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204523795">(Jul 21 2020 at 08:40)</a>:</h4>
<p>oh the third rollup is the one with the UTF-8 linker revert in it, I should look more closely at it</p>



<a name="204524086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204524086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204524086">(Jul 21 2020 at 08:44)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> okay just checked (using the last two links from you) and <a href="https://github.com/rust-lang/rust/issues/74493">#74493</a> (rollup w/ the UTF-8 linker revert in it) has a <em>larger</em> absolute win on <code>helloworld-debug</code> than the try build. so we're likely looking at another win in the rollup, not another regression - <em>or</em> the UTF-8 linker thing is proportional to what's being linked, which the gimli change increased</p>



<a name="204524248"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204524248" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204524248">(Jul 21 2020 at 08:47)</a>:</h4>
<p>we probably want to revert, or at least make a try build with a revert, of the gimli change, to be able to measure the whole effect of the rollups overall</p>



<a name="204524256"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204524256" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204524256">(Jul 21 2020 at 08:47)</a>:</h4>
<p>to make sure that we found everything</p>



<a name="204530136"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204530136" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204530136">(Jul 21 2020 at 10:03)</a>:</h4>
<p>std is no longer built on perf itself because that broke when gimli landed</p>



<a name="204530285"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204530285" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204530285">(Jul 21 2020 at 10:06)</a>:</h4>
<p>I can take on the tasks you suggested for me</p>



<a name="204530493"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204530493" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204530493">(Jul 21 2020 at 10:08)</a>:</h4>
<p>okay, we should keep an eye out for non-determinism, maybe it's not back</p>



<a name="204534967"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204534967" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> matthiaskrgr <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204534967">(Jul 21 2020 at 11:11)</a>:</h4>
<p>can we bench the same commit twice and compare? or is that too expensive?</p>



<a name="204535810"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204535810" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204535810">(Jul 21 2020 at 11:22)</a>:</h4>
<p><span class="user-mention" data-user-id="217864">@matthiaskrgr</span> the problem that we had fixed was between rustc versions, due to how core/std was built. it's technically no longer a problem, but if <code>rustc-perf</code> doesn't build its own core/std there's a risk of something we're not aware of bringing it back</p>



<a name="204536271"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204536271" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204536271">(Jul 21 2020 at 11:29)</a>:</h4>
<p>Okay I've landed the auto rollup=never posting</p>
<p>I'm working on the "get me a try build for a rollup merge" now</p>



<a name="204536380"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204536380" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204536380">(Jul 21 2020 at 11:30)</a>:</h4>
<p>would that amount to trying to merge one of the PRs in a rollup on top of the parent of the whole rollup, and pushing that to the <code>try</code> branch?</p>



<a name="204536389"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204536389" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204536389">(Jul 21 2020 at 11:30)</a>:</h4>
<p>after which @bors does its thing on its own?</p>



<a name="204536417"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204536417" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204536417">(Jul 21 2020 at 11:31)</a>:</h4>
<p>/me remembers having to push manually to <code>try</code></p>



<a name="204542310"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204542310" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204542310">(Jul 21 2020 at 12:45)</a>:</h4>
<p>yeah except the current plan is to have bors take care of pushing to try</p>



<a name="204542360"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204542360" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204542360">(Jul 21 2020 at 12:46)</a>:</h4>
<p>i.e., we'd just automatically open a new PR, and run the normal commands on that</p>



<a name="204542394"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204542394" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204542394">(Jul 21 2020 at 12:46)</a>:</h4>
<p>I've not yet thought about a way to avoid the implicit race with bors merging something to master but we can at least detect it and abort if it happens, so not too worried</p>



<a name="204542412"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204542412" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204542412">(Jul 21 2020 at 12:46)</a>:</h4>
<p>(probably initial draft will just ignore such races)</p>



<a name="204568371"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204568371" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204568371">(Jul 21 2020 at 16:13)</a>:</h4>
<p>Ignore random code-blocks and such, but <a href="https://github.com/rust-lang/rust/pull/74592">https://github.com/rust-lang/rust/pull/74592</a> is the first trial run of the tool</p>



<a name="204568394"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204568394" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204568394">(Jul 21 2020 at 16:13)</a>:</h4>
<p>(I've fixed most of the bugs I think that were identified in that PR)</p>



<a name="204570278"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204570278" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204570278">(Jul 21 2020 at 16:29)</a>:</h4>
<p>I've kicked off two of these in <a href="https://github.com/rust-lang/rust/pull/74592">https://github.com/rust-lang/rust/pull/74592</a> and <a href="https://github.com/rust-lang/rust/pull/74596">https://github.com/rust-lang/rust/pull/74596</a> but going to hold off on more until those come back with some numbers.</p>



<a name="204570464"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204570464" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204570464">(Jul 21 2020 at 16:31)</a>:</h4>
<p>I've asked in <a class="stream" data-stream-id="242791" href="/#narrow/stream/242791-t-infra">#t-infra</a> about thoughts on better approaches to generating these artifacts, I'm not really a fan of these PRs -- we start rapidly accumulating noise and just generally it seems not great.</p>
<p>I think maybe looking at <span class="user-mention" data-user-id="119009">@eddyb</span>'s idea for a "perf dashboard" which logs all landed PRs on it would be a good way to do this, with something like dropdowns for rollups so these post-landing tests can slot in</p>



<a name="204570506"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204570506" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204570506">(Jul 21 2020 at 16:31)</a>:</h4>
<p>I'll look into the tagging of artifacts with metadata as well that we can display on the site soon</p>



<a name="204570964"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204570964" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204570964">(Jul 21 2020 at 16:35)</a>:</h4>
<p>I think seeing all PRs for a rollup from the dashboard would be helpful</p>



<a name="204571030"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204571030" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204571030">(Jul 21 2020 at 16:36)</a>:</h4>
<p>(but I'm also not in charge of triage so you should take my opinion with a grain of salt :P)</p>



<a name="204607136"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607136" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607136">(Jul 21 2020 at 21:52)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> okay so the try-build tooling seems to be working, though is a bit manual right now still</p>
<p>e.g., see <a href="https://github.com/rust-lang/rust/pull/74596">https://github.com/rust-lang/rust/pull/74596</a> which is fully complete</p>
<p>Basically you run the initial command (wherever), <code>@rust-timer make-pr-for 43ba8409d7c7f93d6f0b3c22fe1b193788ff6162</code>, like <a href="https://github.com/rust-lang/rust/pull/74071#issuecomment-661957211">here</a>, then wait a while, then once the bot says it's done you click on the link as usual.</p>
<p>That link is wrong though, what you want is to pull the "reverted to $base" commit from the generated PR (e.g., 1fa54ad from <a href="https://github.com/rust-lang/rust/issues/74596">#74596</a>).</p>
<p>If you put that as the start commit in the comparison URL then you get a correct URL, e.g., <a href="https://perf.rust-lang.org/compare.html?start=1fa54ad9680cc82e7301f8ed4e9b7402dfd6ce0e&amp;end=fc4fbd1d24fb634a895e2f39f495cb3d0a2472d6">https://perf.rust-lang.org/compare.html?start=1fa54ad9680cc82e7301f8ed4e9b7402dfd6ce0e&amp;end=fc4fbd1d24fb634a895e2f39f495cb3d0a2472d6</a> for <a href="https://github.com/rust-lang/rust/pull/74596">https://github.com/rust-lang/rust/pull/74596</a>.</p>
<p>I talked with Pietro today and I think we can cut this down to a much smoother process, that'll look something like this:</p>
<ul>
<li>find a roll-up that regressed/improved things</li>
<li>choose PRs you'd like to benchmark from it</li>
<li>go to each of those PRs, run <code>@rust-timer post-merge-test</code> or so</li>
<li>that'll kick off a build automatically and post on that PR when it's finished with the results link</li>
</ul>
<p>Suggestions to that process appreciated.</p>



<a name="204607185"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607185" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607185">(Jul 21 2020 at 21:53)</a>:</h4>
<p>For now generally speaking we can kick off 1-2 builds at a time with the current impl and it should work, and I hope to implement the new design this weekend (or sooner).</p>



<a name="204607252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607252">(Jul 21 2020 at 21:54)</a>:</h4>
<p>btw those results, if you disable all "cache states" other than <code>full</code>, it's like a 0.4% win</p>



<a name="204607289"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607289" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607289">(Jul 21 2020 at 21:54)</a>:</h4>
<p>at least on <code>ucd</code> and <code>regex</code>. I wish we had a better way to visualize this, but it seems hard</p>



<a name="204607348"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607348" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607348">(Jul 21 2020 at 21:55)</a>:</h4>
<p>then again, could be noise, hard to tell without instruction count measurements in <code>-Z self-profile</code> (which is what I should be working on instead of opining on perf results randomly :P)</p>



<a name="204607408"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607408" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607408">(Jul 21 2020 at 21:56)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> All that seems reasonable, so long as it's documented. The <code>collector</code> README currently has some info on doing CI runs, perhaps info should be added there?</p>



<a name="204607435"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607435" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607435">(Jul 21 2020 at 21:56)</a>:</h4>
<p>This will also need mentioning in the triaging README, but I can do that once this has settled down a bit</p>



<a name="204607438"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607438" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607438">(Jul 21 2020 at 21:56)</a>:</h4>
<p>yeah so I've been holding off until it's fully implemented and tested :)</p>



<a name="204607476"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607476" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607476">(Jul 21 2020 at 21:56)</a>:</h4>
<p>Thank you so much for this, it will make this kind of situation so much more tractable</p>



<a name="204607531"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204607531" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204607531">(Jul 21 2020 at 21:57)</a>:</h4>
<p>feel free to trial the make-pr-for functionality as well on a few SHAs at a time, though up to you if you think it's "important enough" to do now or rather wait a bit</p>



<a name="204608592"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204608592" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204608592">(Jul 21 2020 at 22:08)</a>:</h4>
<p>I'm happy to let you drive this, I'll probably get one of the steps wrong</p>



<a name="204617718"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204617718" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204617718">(Jul 22 2020 at 00:09)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> you were correct that <a href="https://github.com/rust-lang/rust/pull/74069#issuecomment-662166827">https://github.com/rust-lang/rust/pull/74069#issuecomment-662166827</a> was a regression and was masked by something else in <a href="https://github.com/rust-lang/rust/pull/74468">https://github.com/rust-lang/rust/pull/74468</a></p>



<a name="204617765"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204617765" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204617765">(Jul 22 2020 at 00:10)</a>:</h4>
<p>I posted a revert <a href="https://github.com/rust-lang/rust/pull/74611">https://github.com/rust-lang/rust/pull/74611</a></p>



<a name="204618003"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204618003" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204618003">(Jul 22 2020 at 00:14)</a>:</h4>
<p>updated triage log with that info</p>



<a name="204620359"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620359" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620359">(Jul 22 2020 at 00:55)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> That was in a rollup with 11 PRs, and we hadn't identified any regressions prior to now. So perhaps <a href="https://github.com/rust-lang/rust/issues/74069">#74069</a> was the only regression out of the 11?</p>



<a name="204620432"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620432" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620432">(Jul 22 2020 at 00:56)</a>:</h4>
<p>I'm a bit confused, what do you mean we didn't identify any regressions?</p>



<a name="204620441"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620441" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620441">(Jul 22 2020 at 00:56)</a>:</h4>
<p>(you mean that we did not know the culprit?)</p>



<a name="204620470"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620470" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620470">(Jul 22 2020 at 00:56)</a>:</h4>
<p>prior to now, we didn't</p>



<a name="204620484"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620484" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620484">(Jul 22 2020 at 00:57)</a>:</h4>
<p>You said "masked by something else" above...</p>



<a name="204620498"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620498" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620498">(Jul 22 2020 at 00:57)</a>:</h4>
<p>Which sounds to me like you were saying that two perf-affecting PRs landed in a single rollup</p>



<a name="204620620"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620620" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620620">(Jul 22 2020 at 00:59)</a>:</h4>
<p>oh yeah</p>



<a name="204620622"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620622" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620622">(Jul 22 2020 at 00:59)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> so I'm looking at the timing from this morning <a href="https://perf.rust-lang.org/compare.html?start=d3df8512d2c2afc6d2e7d8b5b951dd7f2ad77b02&amp;end=cfade73820883adf654fe34fd6b0b03a99458a51">here</a></p>



<a name="204620623"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620623" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620623">(Jul 22 2020 at 00:59)</a>:</h4>
<p>I think I was thinking of other rollups</p>



<a name="204620630"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620630" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620630">(Jul 22 2020 at 01:00)</a>:</h4>
<p>and I click on the "compare" link, and I get lots of commits in the range</p>



<a name="204620698"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620698" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620698">(Jul 22 2020 at 01:00)</a>:</h4>
<p>yeah that's "fine"</p>



<a name="204620709"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620709" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620709">(Jul 22 2020 at 01:00)</a>:</h4>
<p>if you look at the second to last commit, it represents a revert back to the start of the range</p>



<a name="204620730"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620730" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620730">(Jul 22 2020 at 01:01)</a>:</h4>
<p>we can't avoid this with the current setup because it'll always rebase us atop <em>current</em> master</p>



<a name="204620746"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620746" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620746">(Jul 22 2020 at 01:01)</a>:</h4>
<p>once we start pushing directly to a branch ourselves then that problem will go away</p>



<a name="204620763"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620763" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620763">(Jul 22 2020 at 01:01)</a>:</h4>
<p>but the compare there is just of that PR</p>



<a name="204620771"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620771" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620771">(Jul 22 2020 at 01:01)</a>:</h4>
<p>Ok, I trust you if you say it's expected.</p>



<a name="204620819"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620819" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620819">(Jul 22 2020 at 01:02)</a>:</h4>
<p>the good news is that these results are basically identical to the regression from the original 11-PR-rollup, <a href="https://perf.rust-lang.org/compare.html?start=d3df8512d2c2afc6d2e7d8b5b951dd7f2ad77b02&amp;end=7d31ffc1ac9e9ea356e896e63307168a64501b9d&amp;stat=instructions:u">here</a></p>



<a name="204620831"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620831" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620831">(Jul 22 2020 at 01:02)</a>:</h4>
<p>Which is good evidence that there was only one regression in that rollup</p>



<a name="204620852"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204620852" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204620852">(Jul 22 2020 at 01:02)</a>:</h4>
<p>yep that was my conclusion as well</p>



<a name="204621051"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621051" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621051">(Jul 22 2020 at 01:06)</a>:</h4>
<p>Ok, so we still have to determine if <a href="https://github.com/rust-lang/rust/issues/74461">#74461</a>, which had 18 PRs, had any regressions other than <a href="https://github.com/rust-lang/rust/issues/74416">#74416</a>, which has been reverted. I guess we're still waiting on some perf runs for that?</p>



<a name="204621085"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621085" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621085">(Jul 22 2020 at 01:07)</a>:</h4>
<p>And the other significant one is libbacktrace in <a href="https://github.com/rust-lang/rust/issues/73441">#73441</a>. The perf effects there are clear because it didn't land in a rollup; it's more of an "evaluate tradeoffs and make decisions" situation.</p>



<a name="204621105"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621105" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621105">(Jul 22 2020 at 01:07)</a>:</h4>
<p>the easiest way to find out what the remaining rollup fallout is to run perf on a revert of gimli</p>



<a name="204621157"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621157" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621157">(Jul 22 2020 at 01:08)</a>:</h4>
<p>on top of all the other reverts we want to make (which may be just 1?)</p>



<a name="204621294"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621294" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621294">(Jul 22 2020 at 01:10)</a>:</h4>
<p>I haven't kicked off anything for <a href="https://github.com/rust-lang/rust/issues/74461">#74461</a></p>



<a name="204621878"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621878" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621878">(Jul 22 2020 at 01:21)</a>:</h4>
<p>IOW, we (or at least I) want to see what would've happened, had the libbacktrace/gimli PR never landed</p>



<a name="204621893"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621893" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621893">(Jul 22 2020 at 01:21)</a>:</h4>
<p>after accounting for the UTF-8 linker regression and the enum layout one, being reverted</p>



<a name="204621961"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621961" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621961">(Jul 22 2020 at 01:22)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> <span class="user-mention" data-user-id="120989">@njn</span> oh, also, I keep forgetting, but we already have results for that rollup <a href="https://github.com/rust-lang/rust/pull/74461#issuecomment-661715468">https://github.com/rust-lang/rust/pull/74461#issuecomment-661715468</a></p>



<a name="204621966"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621966" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621966">(Jul 22 2020 at 01:22)</a>:</h4>
<p>and they're <em>weird</em></p>



<a name="204621990"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204621990" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204621990">(Jul 22 2020 at 01:23)</a>:</h4>
<p>that's the combined effect of the rollup itself + the revert of  "<a href="https://github.com/rust-lang/rust/issues/74416">#74416</a> (Use an UTF-8 locale for the linker.)"</p>



<a name="204622039"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622039" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622039">(Jul 22 2020 at 01:24)</a>:</h4>
<p>so we could look for what might've caused <em>that</em></p>



<a name="204622044"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622044" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622044">(Jul 22 2020 at 01:24)</a>:</h4>
<p>I think last I looked at that comment it seemed to point at random commits or something, i.e., lots included in between too</p>



<a name="204622047"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622047" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622047">(Jul 22 2020 at 01:24)</a>:</h4>
<p>that's not just "a freak accident"</p>



<a name="204622063"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622063" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622063">(Jul 22 2020 at 01:24)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> Ctrl+F "auto merge" - only 2 results</p>



<a name="204622071"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622071" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622071">(Jul 22 2020 at 01:24)</a>:</h4>
<p>(in <a href="https://github.com/rust-lang/rust/compare/39d5a61f2e4e237123837f5162cc275c2fd7e625...556b0eb41b4273f0dcde2cbc2bc9f53e2c09d688">https://github.com/rust-lang/rust/compare/39d5a61f2e4e237123837f5162cc275c2fd7e625...556b0eb41b4273f0dcde2cbc2bc9f53e2c09d688</a>)</p>



<a name="204622085"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622085" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622085">(Jul 22 2020 at 01:25)</a>:</h4>
<p>those rustdoc results look just like <a href="https://perf.rust-lang.org/compare.html?start=48036804d2bc461b243c5d291b850e44bcca68ef&amp;end=d7f94516345a36ddfcd68cbdf1df835d356795c3&amp;stat=instructions:u">https://perf.rust-lang.org/compare.html?start=48036804d2bc461b243c5d291b850e44bcca68ef&amp;end=d7f94516345a36ddfcd68cbdf1df835d356795c3&amp;stat=instructions:u</a>, from <a href="https://github.com/rust-lang/rust/issues/74518">#74518</a></p>



<a name="204622096"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622096" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622096">(Jul 22 2020 at 01:25)</a>:</h4>
<p>yeah I'm not worried about rustdoc, the weird thing is the <code>script-servo-2-opt</code> one</p>



<a name="204622098"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622098" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622098">(Jul 22 2020 at 01:25)</a>:</h4>
<p>also there's some sort of trait system improvement</p>



<a name="204622142"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622142" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622142">(Jul 22 2020 at 01:26)</a>:</h4>
<p>as witnessed by my still-has-a-really-long-name-lol-we-never-fixed-that benchmark</p>



<a name="204622164"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622164" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622164">(Jul 22 2020 at 01:27)</a>:</h4>
<p>Ok, but if we've concluded that other effects in that 18-PR-rollup are almost entirely &lt; 1%, that's a good thing</p>



<a name="204622170"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622170" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622170">(Jul 22 2020 at 01:27)</a>:</h4>
<p>oh hey actually renaming the benchmark is something anyone can do now I think</p>



<a name="204622209"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622209" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622209">(Jul 22 2020 at 01:28)</a>:</h4>
<p>yeah I'm glad the revert happened right away. it's the largest rollup of the 3, too, so that's nice</p>



<a name="204622218"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622218" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622218">(Jul 22 2020 at 01:28)</a>:</h4>
<p>just a PR with a rename of the folder and a migration on both sqlite and postgres dbs and it should automatically just happen</p>



<a name="204622221"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622221" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622221">(Jul 22 2020 at 01:28)</a>:</h4>
<p>I almost missed it because I wasn't paying attention to what was landing at the time</p>



<a name="204622224"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622224" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622224">(Jul 22 2020 at 01:28)</a>:</h4>
<p>I basically ignore <code>script-servo-2-opt</code> incremental results now, they jump around like crazy, seemingly due to CGU partitioning</p>



<a name="204622227"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622227" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622227">(Jul 22 2020 at 01:28)</a>:</h4>
<p>ooof</p>



<a name="204622235"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622235" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622235">(Jul 22 2020 at 01:28)</a>:</h4>
<p>so the rollup + 1 revert is case closed?</p>



<a name="204622236"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622236" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622236">(Jul 22 2020 at 01:28)</a>:</h4>
<p>like +/-25% isn't uncommon</p>



<a name="204622246"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622246" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622246">(Jul 22 2020 at 01:29)</a>:</h4>
<p>The 18-PR one? Sounds like it</p>



<a name="204622260"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622260" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622260">(Jul 22 2020 at 01:29)</a>:</h4>
<p>sweet! I think we've found everything. so we can do the gimli revert perf run to confirm</p>



<a name="204622266"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622266" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622266">(Jul 22 2020 at 01:29)</a>:</h4>
<p>Just to clarify: I think these results show that the linker problem was all of the regression. Excluding that, the remaining 17 PRs were actually a slight speedup, except for one serde doc result, and the one script-servo-opt incremental result. Right?</p>



<a name="204622310"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622310" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622310">(Jul 22 2020 at 01:30)</a>:</h4>
<p>indeed</p>



<a name="204622344"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622344" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622344">(Jul 22 2020 at 01:31)</a>:</h4>
<p>we should update <a href="https://github.com/rust-lang/rustc-perf/blob/master/triage/2020-07-21.md">https://github.com/rust-lang/rustc-perf/blob/master/triage/2020-07-21.md</a></p>



<a name="204622397"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622397" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622397">(Jul 22 2020 at 01:32)</a>:</h4>
<p>I think we should just straight up land a gimli revert PR and immediately open a new PR with it plus related fixes (debuginfo reduction, notably)</p>



<a name="204622402"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622402" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622402">(Jul 22 2020 at 01:32)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> does that seems reasonable? I think that's the last change we're not sure of</p>



<a name="204622428"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622428" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622428">(Jul 22 2020 at 01:33)</a>:</h4>
<p>Yes please!</p>



<a name="204622430"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622430" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622430">(Jul 22 2020 at 01:33)</a>:</h4>
<p>I can update the triage log</p>



<a name="204622490"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622490" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622490">(Jul 22 2020 at 01:34)</a>:</h4>
<p>okay I can take on doing the revert and posting a "re-land it" PR immediately thereafter</p>



<a name="204622495"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622495" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622495">(Jul 22 2020 at 01:35)</a>:</h4>
<p>I do really agree with alex's point though:</p>
<blockquote>
<p>These regressions are all defined by how rustc works with loading external crates and what it means to add more dependencies to a crate.</p>
</blockquote>



<a name="204622506"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622506" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622506">(Jul 22 2020 at 01:35)</a>:</h4>
<p>so while it makes sense to remove debuginfo in the near term, I think we should try to figure out why this had such an impact in the first place</p>



<a name="204622507"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622507" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622507">(Jul 22 2020 at 01:35)</a>:</h4>
<p>oh for sure, I think there's definitely a world in which we look at the results with the (partial) perf fixes and say "okay this is enough of a win on its merits that the perf loss is acceptable"</p>



<a name="204622516"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622516" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622516">(Jul 22 2020 at 01:35)</a>:</h4>
<p>but right now we just can't even make that evaluation realistically because of the amount of PRs and regressions etc flying around</p>



<a name="204622556"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622556" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Joshua Nelson <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622556">(Jul 22 2020 at 01:36)</a>:</h4>
<p>gotcha, I just don't want this to be lost becuase we're busy putting out fires</p>



<a name="204622558"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622558" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Diggsey <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622558">(Jul 22 2020 at 01:36)</a>:</h4>
<p>nice, you should update TWiR as it just went out :)</p>



<a name="204622578"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622578" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622578">(Jul 22 2020 at 01:37)</a>:</h4>
<p><span class="user-mention" data-user-id="295632">@Diggory Blake</span> are we including the raw triage log or a link to it?</p>



<a name="204622584"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622584" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Diggsey <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622584">(Jul 22 2020 at 01:38)</a>:</h4>
<p>atm it says</p>
<blockquote>
<p>2020-07-21. A disastrous week. At least 7 regressions. 3 improvements. Lots of murkiness due to rollups.</p>
</blockquote>



<a name="204622623"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622623" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622623">(Jul 22 2020 at 01:38)</a>:</h4>
<p>ah okay</p>



<a name="204622627"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622627" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Diggsey <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622627">(Jul 22 2020 at 01:38)</a>:</h4>
<p>sounds like it can be qualified with some good news now</p>



<a name="204622793"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622793" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622793">(Jul 22 2020 at 01:42)</a>:</h4>
<p><span class="user-mention" data-user-id="232545">@Joshua Nelson</span> "such an impact" is actually mostly <a href="http://perf.rust-lang.org">perf.rust-lang.org</a> not being tuned for absolute differences</p>



<a name="204622802"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622802" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622802">(Jul 22 2020 at 01:42)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> actually, hm, do we need to land the revert of gimli? Now that we've tracked everything down it might be enough to just use the revert PR and run try builds on it until we get to "cancelling" out the effects of the original PR</p>



<a name="204622804"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622804" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622804">(Jul 22 2020 at 01:42)</a>:</h4>
<p>a few miliseconds looks huge</p>



<a name="204622807"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622807" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622807">(Jul 22 2020 at 01:43)</a>:</h4>
<p>or does that not make sense</p>



<a name="204622814"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622814" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622814">(Jul 22 2020 at 01:43)</a>:</h4>
<p>I'm trying to see</p>



<a name="204622820"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622820" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622820">(Jul 22 2020 at 01:43)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> that's what I had in mind earlier, just in case I wasn't super clear</p>



<a name="204622827"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622827" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622827">(Jul 22 2020 at 01:43)</a>:</h4>
<p>I am advocating for backing out the gimli change for now anyway</p>



<a name="204622828"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622828" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622828">(Jul 22 2020 at 01:43)</a>:</h4>
<p>not too particularly concerned about landing the revert vs doing something else, just the data from it</p>



<a name="204622841"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622841" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622841">(Jul 22 2020 at 01:43)</a>:</h4>
<p>basically the reason I ask is that there's like 3-4 other PRs that have been fixing things up since then</p>



<a name="204622844"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622844" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622844">(Jul 22 2020 at 01:44)</a>:</h4>
<p>(as in, either way seems fine to me, landing the revert being the safer route I guess, especially if we're still landing other PRs)</p>



<a name="204622888"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622888" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622888">(Jul 22 2020 at 01:44)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/pull/73441#issuecomment-662150293">https://github.com/rust-lang/rust/pull/73441#issuecomment-662150293</a></p>



<a name="204622897"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622897" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622897">(Jul 22 2020 at 01:44)</a>:</h4>
<p>yeah you know let's just land the revert</p>



<a name="204622900"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622900" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622900">(Jul 22 2020 at 01:44)</a>:</h4>
<p>I'm confident that's not the <em>wrong</em> decision</p>



<a name="204622909"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622909" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622909">(Jul 22 2020 at 01:45)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> you say "check regressed a lot" but it's only a few miliseconds</p>



<a name="204622916"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622916" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622916">(Jul 22 2020 at 01:45)</a>:</h4>
<p>the UI is just really bad at showing that aspect of it</p>



<a name="204622918"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622918" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622918">(Jul 22 2020 at 01:45)</a>:</h4>
<p>A lot in relative terms</p>



<a name="204622919"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622919" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622919">(Jul 22 2020 at 01:45)</a>:</h4>
<p>since we've focused on proportional effects</p>



<a name="204622922"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622922" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622922">(Jul 22 2020 at 01:45)</a>:</h4>
<p>sure but that doesn't quantify the regression correctly</p>



<a name="204622969"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622969" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622969">(Jul 22 2020 at 01:46)</a>:</h4>
<p>"everyone's compile times are one frame duration longer" is different from "20% regression"</p>



<a name="204622980"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204622980" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204622980">(Jul 22 2020 at 01:47)</a>:</h4>
<p>and the relative presentation hides any differences in the absolute regression, too, if there were any</p>



<a name="204623028"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623028" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623028">(Jul 22 2020 at 01:48)</a>:</h4>
<p>if we know what the absolute regression is, we can try to track it down, break it apart, add more measurement points, etc.</p>



<a name="204623044"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623044" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623044">(Jul 22 2020 at 01:48)</a>:</h4>
<p>(I think we really need instruction counts on self-profile data to be able to quantify this better, personally)</p>



<a name="204623046"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623046" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623046">(Jul 22 2020 at 01:48)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/pull/74613">https://github.com/rust-lang/rust/pull/74613</a> is the revert PR for gimli</p>



<a name="204623054"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623054" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623054">(Jul 22 2020 at 01:49)</a>:</h4>
<p>I mean we could still have an absolute difference mode for rustc-perf</p>



<a name="204623058"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623058" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623058">(Jul 22 2020 at 01:49)</a>:</h4>
<p>and use other tools, like <code>perf record</code> to dig into it even if <code>-Z self-profile</code> isn't ready for this</p>



<a name="204623060"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623060" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623060">(Jul 22 2020 at 01:49)</a>:</h4>
<p>sure yes, and e.g. cachegrind</p>



<a name="204623062"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623062" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623062">(Jul 22 2020 at 01:49)</a>:</h4>
<p><span class="user-mention silent" data-user-id="119009">eddyb</span> <a href="#narrow/stream/247081-t-compiler.2Fperformance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21/near/204623028">said</a>:</p>
<blockquote>
<p>if we know what the absolute regression is, we can try to track it down, break it apart, add more measurement points, etc.</p>
</blockquote>
<p>I agree. And I want that done after a revert, so things are clear.</p>



<a name="204623115"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623115" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623115">(Jul 22 2020 at 01:50)</a>:</h4>
<p>my expectation is that <span class="user-mention" data-user-id="120989">@njn</span> or myself or whoever will checkout the revert PR and do some cachgrind diffing and such to try and figure out the source of the regression and, hopefully, pull some improvements out</p>



<a name="204623118"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623118" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623118">(Jul 22 2020 at 01:50)</a>:</h4>
<p>er, the re-land PR</p>



<a name="204623134"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623134" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623134">(Jul 22 2020 at 01:51)</a>:</h4>
<p>so the question is, do I drop everything and join on this? or is there enough time between the two of you to handle this?</p>



<a name="204623139"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623139" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623139">(Jul 22 2020 at 01:51)</a>:</h4>
<p>trying to prioritize and I'm not sure how soon we want to land this if we're doing a revert</p>



<a name="204623186"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623186" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623186">(Jul 22 2020 at 01:52)</a>:</h4>
<p>I think we should be able to handle it, though I imagine we'll pull in <span class="user-mention" data-user-id="123856">@Vadim Petrochenkov</span> or you on the crate-loading stuff for review purposes and such</p>



<a name="204623200"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623200" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623200">(Jul 22 2020 at 01:52)</a>:</h4>
<p>in that case feel free to ping me when there is new data, and I'll try to see if I can find/remember anything relevant</p>



<a name="204623201"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623201" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623201">(Jul 22 2020 at 01:52)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> why does the revert have four commits, when the original landing only had one?</p>



<a name="204623211"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623211" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623211">(Jul 22 2020 at 01:53)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> because we've landed other PRs that depended on the landing since then</p>



<a name="204623213"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623213" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623213">(Jul 22 2020 at 01:53)</a>:</h4>
<p>if you look at them there's a bump to the crate dep, some bootstrap fixes, etc</p>



<a name="204623215"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623215" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623215">(Jul 22 2020 at 01:53)</a>:</h4>
<p>the landing introduced regressions unrelated to perf, too</p>



<a name="204623224"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623224" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623224">(Jul 22 2020 at 01:54)</a>:</h4>
<p>something that might be useful btw is having one compiler that can use either version of libstd, because then you know you've accounted for the compiler itself not being different, but idk how much that helps</p>



<a name="204623271"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623271" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623271">(Jul 22 2020 at 01:54)</a>:</h4>
<p>presumably it would allow diff-ing profiles accurately?</p>



<a name="204623304"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623304" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623304">(Jul 22 2020 at 01:55)</a>:</h4>
<p>I personally expect that none of the regression comes from the compiler itself linking to backtrace-rs rather than libbacktrace</p>



<a name="204623362"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623362" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623362">(Jul 22 2020 at 01:56)</a>:</h4>
<p>oh right I'm more thinking about it being the exact same executable</p>



<a name="204623379"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623379" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623379">(Jul 22 2020 at 01:56)</a>:</h4>
<p>(for low-level profiling)</p>



<a name="204623411"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623411" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623411">(Jul 22 2020 at 01:58)</a>:</h4>
<p>I think it won't matter for most tools that I know of</p>



<a name="204623458"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623458" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623458">(Jul 22 2020 at 01:58)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> oh a fun way to repro the startup costs is just to add the dependencies without using them</p>



<a name="204623467"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623467" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623467">(Jul 22 2020 at 01:59)</a>:</h4>
<p>one of my plans was to add 1000 dependencies to std which are all basically just empty crates and see the perf effect of that</p>



<a name="204623471"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623471" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623471">(Jul 22 2020 at 01:59)</a>:</h4>
<p>ahahaha</p>



<a name="204623485"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623485" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623485">(Jul 22 2020 at 01:59)</a>:</h4>
<p>frankly you should be able to do it without them being libstd dependencies, just dependencies of a single crate that then is used by a single empty crate</p>



<a name="204623555"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623555" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623555">(Jul 22 2020 at 02:00)</a>:</h4>
<p>yeah maybe we can just add that to perf.rlo as a benchmark</p>



<a name="204623566"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623566" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623566">(Jul 22 2020 at 02:00)</a>:</h4>
<p>ideally the cost will just be that of <code>mmap</code>-ing each of the rlibs into memory and reading a few basic details</p>



<a name="204623578"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623578" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623578">(Jul 22 2020 at 02:01)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> oooh and we can make it ignore std changes by having it be <code>#![no_std]</code> - or even <code>#![no_core]</code></p>



<a name="204623579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623579">(Jul 22 2020 at 02:01)</a>:</h4>
<p>I guess there's two scenarios -- there's the "linear dependency chain 1000 crates deep" and the "I directly depend on 1000 crates"</p>



<a name="204623583"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623583" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623583">(Jul 22 2020 at 02:01)</a>:</h4>
<p>AFAIK the implementation doesn't distinguish</p>



<a name="204623587"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623587" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623587">(Jul 22 2020 at 02:01)</a>:</h4>
<p>that... seems broken, I shouldn't have to care about deps of my dep?</p>



<a name="204623592"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623592" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623592">(Jul 22 2020 at 02:01)</a>:</h4>
<p>other than maybe blowing the stack?</p>



<a name="204623595"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623595" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623595">(Jul 22 2020 at 02:01)</a>:</h4>
<p>are we loading them for like spans or something?</p>



<a name="204623599"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623599" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623599">(Jul 22 2020 at 02:01)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> your dep can freely refer to stuff in there</p>



<a name="204623641"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623641" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623641">(Jul 22 2020 at 02:02)</a>:</h4>
<p>oh, we don't inline?</p>



<a name="204623643"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623643" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623643">(Jul 22 2020 at 02:02)</a>:</h4>
<p>I guess that makes sense but is a pain</p>



<a name="204623655"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623655" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623655">(Jul 22 2020 at 02:02)</a>:</h4>
<p>I mean I expect it would be more expensive in the common case if we did inline entire crates' metadata :P</p>



<a name="204623696"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623696" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623696">(Jul 22 2020 at 02:03)</a>:</h4>
<p>but still the cost of finding each of them and confirming it's the right crate should be small. I suspect we're actually eagerly loading something like a list or a map</p>



<a name="204623702"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623702" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623702">(Jul 22 2020 at 02:03)</a>:</h4>
<p>that we might just never need</p>



<a name="204623754"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623754" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623754">(Jul 22 2020 at 02:04)</a>:</h4>
<p>this also means you might not see the problem for an empty dependency crate</p>



<a name="204623784"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623784" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623784">(Jul 22 2020 at 02:05)</a>:</h4>
<p>well not <em>entire</em> metadata</p>



<a name="204623838"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623838" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623838">(Jul 22 2020 at 02:06)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> btw "private deps" could theoretically solve this if they're integrated well-enough</p>



<a name="204623842"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623842" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623842">(Jul 22 2020 at 02:06)</a>:</h4>
<p>that's basically what I was thinking of</p>



<a name="204623854"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623854" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623854">(Jul 22 2020 at 02:06)</a>:</h4>
<p>we do need to ensure that nothing actually refers to that crate, outside of maybe encoded MIR. but maybe not even that?</p>



<a name="204623869"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623869" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623869">(Jul 22 2020 at 02:07)</a>:</h4>
<p>we should able to tell in rustc when serializing metadata or somewhere along those lines that crate B was a private dep so we need not tell consumers of crate A that they need to load its metadata (I guess unless they're linking in stuff? not sure, maybe linkers are already good enough)</p>



<a name="204623885"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623885" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623885">(Jul 22 2020 at 02:07)</a>:</h4>
<p>that does imply no cross-crate codegen. so no generics that use the private dep, for example</p>



<a name="204623939"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623939" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623939">(Jul 22 2020 at 02:08)</a>:</h4>
<p>there's various levels of this you can do, but they all boil down to <em>deferring</em> even looking for the dependency on disk</p>



<a name="204623954"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623954" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623954">(Jul 22 2020 at 02:08)</a>:</h4>
<p>yeah</p>



<a name="204623973"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204623973" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204623973">(Jul 22 2020 at 02:09)</a>:</h4>
<p>I suspect it would be too expensive to defer to the first time you have to translate a <code>CrateNum</code> to that dependency, but I don't know if we've ever measured it. <span class="user-mention" data-user-id="123856">@Vadim Petrochenkov</span> might've, though</p>



<a name="204730054"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730054" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730054">(Jul 22 2020 at 22:29)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> , <span class="user-mention" data-user-id="119009">@eddyb</span> : did we reach a conclusion about <a href="https://github.com/rust-lang/rust/issues/74493">#74493</a>, which reverted the linker regression? I was <a href="https://github.com/rust-lang/rust/pull/74493#issuecomment-661521298">concerned</a> that another regression may have landed in that rollup and been masked by the linker reversion.</p>



<a name="204730202"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730202" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730202">(Jul 22 2020 at 22:30)</a>:</h4>
<p>no</p>



<a name="204730211"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730211" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730211">(Jul 22 2020 at 22:30)</a>:</h4>
<p>we checked that it wasn't <a href="https://github.com/rust-lang/rust/issues/74071">#74071</a> (rustc_metadata: Make crate loading fully speculative) though</p>



<a name="204730226"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730226" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730226">(Jul 22 2020 at 22:30)</a>:</h4>
<p>not sure if the conclusion then is "it wasn't anything"</p>



<a name="204730383"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730383" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730383">(Jul 22 2020 at 22:32)</a>:</h4>
<p>at the top of this thread I suggested checking <a href="https://github.com/rust-lang/rust/issues/74071">#74071</a> and <a href="https://github.com/rust-lang/rust/issues/74201">#74201</a></p>



<a name="204730601"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730601" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730601">(Jul 22 2020 at 22:35)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/issues/74201">https://github.com/rust-lang/rust/issues/74201</a> is an issue?</p>



<a name="204730636"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730636" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730636">(Jul 22 2020 at 22:35)</a>:</h4>
<p>ah you meant <a href="https://github.com/rust-lang/rust/issues/74201">#74201</a> (impl Index&lt;RangeFrom&gt; for CStr)</p>



<a name="204730645"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730645" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730645">(Jul 22 2020 at 22:35)</a>:</h4>
<p>seems unlikely but I can kick off a build</p>



<a name="204730706"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730706" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730706">(Jul 22 2020 at 22:36)</a>:</h4>
<p>er <a href="https://github.com/rust-lang/rust/pull/74021">https://github.com/rust-lang/rust/pull/74021</a></p>



<a name="204730792"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730792" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730792">(Jul 22 2020 at 22:37)</a>:</h4>
<p>kicked off <a href="https://github.com/rust-lang/rust/pull/74660">https://github.com/rust-lang/rust/pull/74660</a></p>



<a name="204730912"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730912" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730912">(Jul 22 2020 at 22:38)</a>:</h4>
<p>sorry, yes, <a href="https://github.com/rust-lang/rust/issues/74021">#74021</a></p>



<a name="204730929"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204730929" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204730929">(Jul 22 2020 at 22:38)</a>:</h4>
<p>thanks</p>



<a name="204759672"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204759672" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204759672">(Jul 23 2020 at 04:26)</a>:</h4>
<p>I was hoping we'd use the gimli revert to confirm we've found everything in the "bad range"</p>



<a name="204790023"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204790023" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Jake Goulding <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204790023">(Jul 23 2020 at 12:32)</a>:</h4>
<blockquote>
<p>oh a fun way to repro the startup costs is just to add the dependencies without using them</p>
</blockquote>
<p>Well, now I’m interested from the playground’s perspective.</p>



<a name="204790282"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204790282" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204790282">(Jul 23 2020 at 12:35)</a>:</h4>
<p><span class="user-mention" data-user-id="116155">@Jake Goulding</span> it's possible nothing gets loaded (and treated as a dependency, if you're building an rlib) until you name those crates</p>



<a name="204790307"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204790307" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204790307">(Jul 23 2020 at 12:35)</a>:</h4>
<p>generate a file full of <code>extern crate ...;</code> for every crate you're listing in <code>Cargo.toml</code>, and compare with an empty file :P</p>



<a name="204790970"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204790970" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> eddyb <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204790970">(Jul 23 2020 at 12:41)</a>:</h4>
<p>(make sure to use <code>cargo check</code> or equivalent to not measure linking time too)</p>



<a name="204845018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204845018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204845018">(Jul 23 2020 at 19:44)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> <a href="https://github.com/rust-lang/rust/pull/74493#issuecomment-663197255">https://github.com/rust-lang/rust/pull/74493#issuecomment-663197255</a> -- I think that closes the investigation there.</p>



<a name="204859235"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204859235" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204859235">(Jul 23 2020 at 22:09)</a>:</h4>
<p>I am concerned that I think we've already landed all planned reverts but performance has not yet gone to zero.</p>



<a name="204859292"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204859292" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204859292">(Jul 23 2020 at 22:10)</a>:</h4>
<p>So presumably something snuck through.</p>



<a name="204859300"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204859300" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204859300">(Jul 23 2020 at 22:10)</a>:</h4>
<p>cc <span class="user-mention" data-user-id="120989">@njn</span></p>



<a name="204859463"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204859463" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204859463">(Jul 23 2020 at 22:12)</a>:</h4>
<p>Maybe I'm forgetting something though?</p>



<a name="204863398"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204863398" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204863398">(Jul 23 2020 at 23:04)</a>:</h4>
<p>Have all the reversions been measured?</p>



<a name="204863438"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204863438" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204863438">(Jul 23 2020 at 23:04)</a>:</h4>
<p>I <em>think</em> so?</p>



<a name="204863453"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204863453" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204863453">(Jul 23 2020 at 23:05)</a>:</h4>
<p>Or at least we have essentially latest master measured which would then include their effects</p>



<a name="204863656"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204863656" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204863656">(Jul 23 2020 at 23:07)</a>:</h4>
<p><a href="/user_uploads/4715/KyKk3HfNVKDFFxuTvP0fly_F/image.png">image.png</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/KyKk3HfNVKDFFxuTvP0fly_F/image.png" title="image.png"><img src="/user_uploads/4715/KyKk3HfNVKDFFxuTvP0fly_F/image.png"></a></div>



<a name="204864050"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864050" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864050">(Jul 23 2020 at 23:13)</a>:</h4>
<p>I think we had three clear regressions: the gimli one, the utf8 linker one, and the niche-filling one</p>



<a name="204864098"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864098" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864098">(Jul 23 2020 at 23:14)</a>:</h4>
<p>yes the latest commit includes reverts for all 3</p>



<a name="204864102"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864102" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864102">(Jul 23 2020 at 23:14)</a>:</h4>
<p>(niche-filling is not individually benchmarked, though)</p>



<a name="204864106"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864106" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864106">(Jul 23 2020 at 23:14)</a>:</h4>
<p>I'll take a close look, try to work out the situation</p>



<a name="204864143"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864143" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864143">(Jul 23 2020 at 23:15)</a>:</h4>
<p>I guess it's possible that something in <a href="https://github.com/rust-lang/rust/commit/2bbfa02b1b15974d5772b520aa027bf79f8c248e">2bbfa02b1b15974d5772b520aa027bf79f8c248e</a> made things slower</p>



<a name="204864156"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864156" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864156">(Jul 23 2020 at 23:15)</a>:</h4>
<p>(that landed between the niche-fill revert and gimli revert)</p>



<a name="204864217"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864217" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864217">(Jul 23 2020 at 23:16)</a>:</h4>
<p>oh no we do have data on that</p>



<a name="204864224"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864224" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864224">(Jul 23 2020 at 23:16)</a>:</h4>
<p>hm actually</p>



<a name="204864232"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864232" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864232">(Jul 23 2020 at 23:16)</a>:</h4>
<p>okay, so <a href="https://perf.rust-lang.org/compare.html?start=e8b55a4ad230ebec762fdfc4f241ba98a98560af&amp;end=2bbfa02b1b15974d5772b520aa027bf79f8c248e&amp;stat=instructions:u">https://perf.rust-lang.org/compare.html?start=e8b55a4ad230ebec762fdfc4f241ba98a98560af&amp;end=2bbfa02b1b15974d5772b520aa027bf79f8c248e&amp;stat=instructions:u</a> shows zero diff</p>



<a name="204864325"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864325" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864325">(Jul 23 2020 at 23:18)</a>:</h4>
<p>which implies that either:</p>
<ul>
<li>the niche-filling wasn't the actual cause, and the revert as such had no effect</li>
<li><a href="https://github.com/rust-lang/rust/commit/2bbfa02b1b15974d5772b520aa027bf79f8c248e">2bbfa02b1b15974d5772b520aa027bf79f8c248e</a> undid the revert's gains perfectly</li>
</ul>



<a name="204864345"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864345" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864345">(Jul 23 2020 at 23:19)</a>:</h4>
<p>I guess maybe we should wait for niche filling revert to get benchmarked</p>



<a name="204864948"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864948" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864948">(Jul 23 2020 at 23:29)</a>:</h4>
<p><a href="/user_uploads/4715/lvk4x7IELP1rmsU6NxFYGqqA/Screen-Shot-2020-07-24-at-9.29.07-am.png">Screen-Shot-2020-07-24-at-9.29.07-am.png</a></p>
<div class="message_inline_image"><a href="/user_uploads/4715/lvk4x7IELP1rmsU6NxFYGqqA/Screen-Shot-2020-07-24-at-9.29.07-am.png" title="Screen-Shot-2020-07-24-at-9.29.07-am.png"><img src="/user_uploads/4715/lvk4x7IELP1rmsU6NxFYGqqA/Screen-Shot-2020-07-24-at-9.29.07-am.png"></a></div>



<a name="204864955"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864955" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864955">(Jul 23 2020 at 23:29)</a>:</h4>
<p>This is from <a href="https://perf.rust-lang.org/?start=9d09331e00b02f81c714b0c41ce3a38380dd36a2&amp;end=371917ab218de72a625227ba6eed7e84e610a058&amp;absolute=false&amp;stat=instructions%3Au">here</a></p>



<a name="204864962"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204864962" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204864962">(Jul 23 2020 at 23:29)</a>:</h4>
<ul>
<li>1st increase: d3df, rollup with the utf8 linker</li>
<li>2nd increase: 7d31, rollup with niche filling</li>
<li>3rd increase: 1fa5, gimli</li>
<li>1st decrease: 0701, rollup with utf8 linker reversion</li>
<li>2nd decrease: 3719, gimli reversion</li>
</ul>



<a name="204865039"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865039" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865039">(Jul 23 2020 at 23:30)</a>:</h4>
<p>So I don't see the niche-filling reversion yet</p>



<a name="204865273"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865273" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865273">(Jul 23 2020 at 23:34)</a>:</h4>
<p>the gimli reversion is after the niche filling revert though</p>



<a name="204865297"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865297" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865297">(Jul 23 2020 at 23:34)</a>:</h4>
<p>the niche filling revert should be seen as part of <a href="https://github.com/rust-lang/rust/commit/2bbfa02b1b15974d5772b520aa027bf79f8c248e">2bbfa02b1b15974d5772b520aa027bf79f8c248e</a> right now afaict</p>



<a name="204865427"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865427" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865427">(Jul 23 2020 at 23:37)</a>:</h4>
<p>niche-filling landed in revision fcac, but I don't see that on the graph</p>



<a name="204865442"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865442" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865442">(Jul 23 2020 at 23:37)</a>:</h4>
<p>right because we haven't benchmarked</p>



<a name="204865445"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865445" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865445">(Jul 23 2020 at 23:37)</a>:</h4>
<p>but fcac is the parent of 2bbfa</p>



<a name="204865455"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865455" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865455">(Jul 23 2020 at 23:37)</a>:</h4>
<p>so any changes that fcac caused, presuming that 2bbfa is perf neutral, should be visible in 2bbfa</p>



<a name="204865501"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865501" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865501">(Jul 23 2020 at 23:38)</a>:</h4>
<p>Why is fcac not benchmarked?</p>



<a name="204865537"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865537" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865537">(Jul 23 2020 at 23:39)</a>:</h4>
<p>just haven't gotten to it yet</p>



<a name="204865547"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865547" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865547">(Jul 23 2020 at 23:39)</a>:</h4>
<p>bors is faster than perf right now by around half an hour, on average, plus we have try builds</p>



<a name="204865553"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865553" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865553">(Jul 23 2020 at 23:39)</a>:</h4>
<p>we can wait</p>



<a name="204865561"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865561" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865561">(Jul 23 2020 at 23:39)</a>:</h4>
<p>Ugh, we should have done a CI run on the niche-filling reversion, to be sure</p>



<a name="204865724"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865724" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865724">(Jul 23 2020 at 23:42)</a>:</h4>
<p>Hm yeah probably</p>



<a name="204865750"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865750" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865750">(Jul 23 2020 at 23:42)</a>:</h4>
<p>Though I am fairly confident in our tooling for checking</p>



<a name="204865781"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865781" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865781">(Jul 23 2020 at 23:42)</a>:</h4>
<p>my guess right now is that something else is wrong</p>



<a name="204865796"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865796" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865796">(Jul 23 2020 at 23:43)</a>:</h4>
<p>something else caused a regression, you mean?</p>



<a name="204865808"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865808" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865808">(Jul 23 2020 at 23:43)</a>:</h4>
<p>either that or 2bbfa contains a regression or something like that</p>



<a name="204865847"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865847" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865847">(Jul 23 2020 at 23:44)</a>:</h4>
<p>for example, niche filling might've been fixed by some unrelated changes, so the revert had no effect, but the unrelated changes were masked as a perf improvement by other changes</p>



<a name="204865888"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865888" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865888">(Jul 23 2020 at 23:44)</a>:</h4>
<p>conclusion: rollups are very bad</p>



<a name="204865917"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204865917" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204865917">(Jul 23 2020 at 23:44)</a>:</h4>
<p>for perf analysis, indeed</p>



<a name="204866012"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866012" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866012">(Jul 23 2020 at 23:46)</a>:</h4>
<p>3 bad regressions in 3 consecutive merges is also a nightmare</p>



<a name="204866074"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866074" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866074">(Jul 23 2020 at 23:47)</a>:</h4>
<p>Actually... for Firefox, if a change has a sufficiently large effect on perf, a comment is auto-posted into the bug</p>



<a name="204866079"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866079" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866079">(Jul 23 2020 at 23:47)</a>:</h4>
<p>Could we do that for PRs?</p>



<a name="204866116"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866116" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866116">(Jul 23 2020 at 23:48)</a>:</h4>
<p>That way we'd get faster feedback, and a better chance of a reversion before more regressions can occur</p>



<a name="204866147"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866147" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866147">(Jul 23 2020 at 23:48)</a>:</h4>
<p>probably wouldn't have helped for this week's perfect storm, but might help in many cases</p>



<a name="204866150"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866150" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866150">(Jul 23 2020 at 23:48)</a>:</h4>
<p>What do you mean? Posting the results if at least one benchmark differs by &gt;5% or something like that into the (merged) PR?</p>



<a name="204866156"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866156" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866156">(Jul 23 2020 at 23:48)</a>:</h4>
<p>yes</p>



<a name="204866168"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866168" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866168">(Jul 23 2020 at 23:48)</a>:</h4>
<p>yeah that's definitely possible</p>



<a name="204866225"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866225" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866225">(Jul 23 2020 at 23:49)</a>:</h4>
<p>open an issue? I think we might have one already</p>



<a name="204866447"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204866447" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204866447">(Jul 23 2020 at 23:52)</a>:</h4>
<p>It would also be quite possible for us to post a revert to make people more likely to notice</p>



<a name="204867013"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204867013" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204867013">(Jul 24 2020 at 00:01)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> I couldn't find an existing issue about this, so I made <a href="https://github.com/rust-lang/rustc-perf/issues/711">https://github.com/rust-lang/rustc-perf/issues/711</a></p>



<a name="204870691"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204870691" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204870691">(Jul 24 2020 at 01:12)</a>:</h4>
<p><span class="user-mention" data-user-id="132040">@Manish Goregaokar</span> Should I open a GitHub issue about documenting rollup procedure? What repository would that be part of?</p>



<a name="204871715"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204871715" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Manish Goregaokar <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204871715">(Jul 24 2020 at 01:37)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> forge. It's on my to-do list, just not now, and I don't consider it high priority since I'm currently the only person doing rollups</p>



<a name="204967419"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/204967419" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#204967419">(Jul 24 2020 at 21:11)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> Okay so we/I were wrong about <a href="https://github.com/rust-lang/rust/pull/74468">https://github.com/rust-lang/rust/pull/74468</a> but I'm not yet sure exactly what that means. See <a href="https://github.com/rust-lang/rust/pull/74716#issuecomment-663735771">https://github.com/rust-lang/rust/pull/74716#issuecomment-663735771</a></p>



<a name="205070665"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205070665" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205070665">(Jul 26 2020 at 22:52)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> I'm going to do some local runs to investigate <a href="https://github.com/rust-lang/rust/issues/74468">#74468</a></p>



<a name="205070669"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205070669" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205070669">(Jul 26 2020 at 22:52)</a>:</h4>
<p>The perf results from the landing are missing, though :(  (<a href="https://perf.rust-lang.org/compare.html?start=d3df8512d2c2afc6d2e7d8b5b951dd7f2ad77b02&amp;end=7d31ffc1ac9e9ea356e896e63307168a64501b9d&amp;stat=instructions:u">here</a>)</p>



<a name="205070739"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205070739" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205070739">(Jul 26 2020 at 22:55)</a>:</h4>
<p>I know the worst result was 10%</p>



<a name="205070743"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205070743" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205070743">(Jul 26 2020 at 22:55)</a>:</h4>
<p>But it would be really helpful to have those results so I know which benchmarks/runs regressed, and only have to measure a subset :(</p>



<a name="205071005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071005">(Jul 26 2020 at 23:02)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span> oh they're not missing just moved</p>



<a name="205071009"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071009" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071009">(Jul 26 2020 at 23:03)</a>:</h4>
<p><a href="https://perf.rust-lang.org/compare.html?start=d3df8512d2c2afc6d2e7d8b5b951dd7f2ad77b02-v1&amp;end=7d31ffc1ac9e9ea356e896e63307168a64501b9d&amp;stat=instructions:u">https://perf.rust-lang.org/compare.html?start=d3df8512d2c2afc6d2e7d8b5b951dd7f2ad77b02-v1&amp;end=7d31ffc1ac9e9ea356e896e63307168a64501b9d&amp;stat=instructions:u</a></p>



<a name="205071014"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071014" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071014">(Jul 26 2020 at 23:03)</a>:</h4>
<p>I'm trying to recollect the base commit</p>



<a name="205071057"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071057" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071057">(Jul 26 2020 at 23:04)</a>:</h4>
<p>(but our 2.5 hour build time on the server is making that hard, though I'm hopeful about the changes I landed today)</p>



<a name="205071059"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071059" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071059">(Jul 26 2020 at 23:04)</a>:</h4>
<p>got it, thanks</p>



<a name="205071113"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071113" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071113">(Jul 26 2020 at 23:06)</a>:</h4>
<p><span class="user-mention" data-user-id="120989">@njn</span>  fwiw I expect that you'll find no difference between the two as I noted in my latest comment</p>



<a name="205071117"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071117" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071117">(Jul 26 2020 at 23:06)</a>:</h4>
<p>I admit I don't quite understand all of your conclusions, and the stuff about std</p>



<a name="205071121"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071121" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071121">(Jul 26 2020 at 23:07)</a>:</h4>
<p>I can try to explain?</p>



<a name="205071127"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071127" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071127">(Jul 26 2020 at 23:07)</a>:</h4>
<p>Not sure what in particular was confusing</p>



<a name="205071132"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071132" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071132">(Jul 26 2020 at 23:07)</a>:</h4>
<p>maybe just re-explain :)</p>



<a name="205071176"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071176" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071176">(Jul 26 2020 at 23:08)</a>:</h4>
<p>But the setup on the collector was different when we benchmarked d3df and 7d31 - the latter was benchmarked with a bors-produced std while d3df was benchmarked with a locally built std</p>



<a name="205071188"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071188" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071188">(Jul 26 2020 at 23:09)</a>:</h4>
<p>(the reason for the change is that the gimli backtrace stuff broke being able to build std off of the artifacts)</p>



<a name="205071237"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071237" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071237">(Jul 26 2020 at 23:11)</a>:</h4>
<p>We've also benchmarked reverts of the rollup with neutral perf results (and I tested hello world and one other benchmark locally with neutral results too)</p>



<a name="205071242"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071242" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071242">(Jul 26 2020 at 23:11)</a>:</h4>
<p>All this leads me to believe the rollup was neutral performance wise and the bump on our graphs is purely a result of the change in no longer building std</p>



<a name="205071277"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071277" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071277">(Jul 26 2020 at 23:12)</a>:</h4>
<p>so it's actually fallout from the gimli change?</p>



<a name="205071293"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071293" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071293">(Jul 26 2020 at 23:13)</a>:</h4>
<p>Well only indirectly, in the sense that we changed how std was obtained, but I would expect a similar diff regardless of gimli having landed in that time</p>



<a name="205071391"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071391" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071391">(Jul 26 2020 at 23:16)</a>:</h4>
<p>e.g. if we were to start building std locally again I expect that would be faster again, despite having reverted gimli already</p>



<a name="205071395"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071395" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071395">(Jul 26 2020 at 23:16)</a>:</h4>
<p>Can we start building std locally again, then?</p>



<a name="205071404"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071404" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071404">(Jul 26 2020 at 23:17)</a>:</h4>
<p>We can, yeah. I want to finish this investigation and we need to land it in a way that doesn't hide a regression</p>



<a name="205071450"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071450" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071450">(Jul 26 2020 at 23:18)</a>:</h4>
<p>(if our collector was faster I would want to double collect any change that we intend to deploy a benchmark change in, but we can't really afford that right now)</p>



<a name="205071667"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071667" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071667">(Jul 26 2020 at 23:26)</a>:</h4>
<p>need to get rid of script-servo :)  Or at least have a way to skip it for CI runs?</p>



<a name="205071678"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071678" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071678">(Jul 26 2020 at 23:27)</a>:</h4>
<p>Yeah we could do either, I think we're actually in pretty good shape to start adding options to builds (e.g. skipping script servo, at least opt)</p>



<a name="205071840"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071840" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071840">(Jul 26 2020 at 23:32)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span> Ok, I just confirmed that <a href="https://github.com/rust-lang/rust/issues/74468">#74468</a> is perf-neutral on my machine</p>



<a name="205071885"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071885" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071885">(Jul 26 2020 at 23:34)</a>:</h4>
<p>Okay, I think both of us confirming that is probably enough for me</p>



<a name="205071893"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071893" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071893">(Jul 26 2020 at 23:34)</a>:</h4>
<p>I don't yet understand why gimli affected the building of std, and why that affects perf</p>



<a name="205071898"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071898" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071898">(Jul 26 2020 at 23:35)</a>:</h4>
<p>gimli added src/backtrace as a path dep to std, and that wasn't included in the rust-src component</p>



<a name="205071905"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071905" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071905">(Jul 26 2020 at 23:35)</a>:</h4>
<p>This meant that we couldn't build std using that component (which used to be what we did on the collection machine)</p>



<a name="205071946"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071946" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071946">(Jul 26 2020 at 23:36)</a>:</h4>
<p>We started doing this a while back to mitigate a cargo bug (since fixed) which introduced non-determinism in std's hash, affecting in particular syn-opt variability</p>



<a name="205071953"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071953" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071953">(Jul 26 2020 at 23:37)</a>:</h4>
<p>(this was a bug in rust-lang/rust, but not one currently caught by ci there)</p>



<a name="205071963"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205071963" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205071963">(Jul 26 2020 at 23:37)</a>:</h4>
<p>what is the path forward?</p>



<a name="205072018"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205072018" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205072018">(Jul 26 2020 at 23:39)</a>:</h4>
<p>With what, exactly?</p>



<a name="205072082"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205072082" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205072082">(Jul 26 2020 at 23:41)</a>:</h4>
<p>We should be able to go back to building std locally, though I would like to determine what the difference between the two is. Last I talked to <span class="user-mention" data-user-id="119009">@eddyb</span> out belief was that we shouldn't be different from the std built by ci</p>



<a name="205072510"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205072510" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205072510">(Jul 26 2020 at 23:54)</a>:</h4>
<p><span class="user-mention" data-user-id="116122">@simulacrum</span>  <a href="https://github.com/rust-lang/rust/issues/74468">#74468</a> and <a href="https://github.com/rust-lang/rust/issues/74069">#74069</a> should have comments added to explain that they weren't actually the cause of the regression. I could add them, but I suspect you might explain it better than me :)</p>



<a name="205072518"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205072518" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205072518">(Jul 26 2020 at 23:54)</a>:</h4>
<p>I can do that.</p>



<a name="205072522"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205072522" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205072522">(Jul 26 2020 at 23:55)</a>:</h4>
<p>I will also update the triage report</p>



<a name="205072527"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/247081-t-compiler/performance/topic/Follow-up%20to%20the%20bad%20perf%20triage%20of%202020-07-21/near/205072527" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> njn <a href="https://rust-lang.github.io/zulip_archive/stream/247081-t-compiler/performance/topic/Follow-up.20to.20the.20bad.20perf.20triage.20of.202020-07-21.html#205072527">(Jul 26 2020 at 23:55)</a>:</h4>
<p>Thank you. If any of the links are broken and you could fix them, that would be lovely</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>